package com.changgou.file.controller;
import com.changgou.entity.CustomException;
import com.changgou.entity.Result;
import com.changgou.entity.StatusCode;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * 统一异常处理类
 */
//声明该类是一个增强类
@ControllerAdvice
public class BaseExceptionHandler {
	
    @ExceptionHandler(value = Exception.class)
    @ResponseBody
    public Result error(Exception e){
        e.printStackTrace();        
        return new Result(false, StatusCode.ERROR, "执行出错");
    }

    /**
     * 处理自定义异常类
     * @param ce
     * @return
     */
    @ExceptionHandler(value = CustomException.class)
    @ResponseBody
    public Result error(CustomException ce){
        ce.printStackTrace();
        return ce.getResult();
    }
}
